using WMS.RealTime.Domain.DTOs;

namespace WMS.RealTime.IServers.Interfaces
{
    /// <summary>
    /// 实时推送服务接口
    /// </summary>
    public interface IRealTimePushService
    {
        /// <summary>
        /// 推送今日概况
        /// </summary>
        Task PushTodayOverviewAsync();

        /// <summary>
        /// 推送昨日概况
        /// </summary>
        Task PushYesterdayOverviewAsync();

        /// <summary>
        /// 推送库存占比
        /// </summary>
        Task PushInventoryProportionAsync();

        /// <summary>
        /// 推送入库统计
        /// </summary>
        Task PushInboundStatisticsAsync(string timeRange = "7");

        /// <summary>
        /// 推送待办事项
        /// </summary>
        Task PushTodoItemsAsync();

        /// <summary>
        /// 推送告警数据
        /// </summary>
        Task PushAlertDataAsync();

        /// <summary>
        /// 推送排名数据
        /// </summary>
        Task PushRankingDataAsync();

        /// <summary>
        /// 推送系统消息
        /// </summary>
        Task PushSystemMessageAsync(string message);

        /// <summary>
        /// 推送所有数据
        /// </summary>
        Task PushAllDataAsync();
    }
} 